package com.lemon.boot.dto;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 租户-菜单中间表 数据传输对象
 *
 * @author Lemon
 * @since 2024-02-29
 */
@Getter
@Setter
@ApiModel(value = "租户-菜单中间表")
public class TenantMenuDTO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键ID")
    private Long id;

    @ApiModelProperty(value = "租户ID")
    private Long tenantId;

    @ApiModelProperty(value = "菜单ID")
    private Long menuId;

    @ApiModelProperty(value = "父ID")
    private Long parentId;

    @ApiModelProperty(value = "菜单名称")
    private String name;

    @ApiModelProperty(value = "图标地址")
    private String icon;

    @ApiModelProperty(value = "排序")
    private Integer seq;

    @ApiModelProperty(value = "树形菜单ID链")
    private String treeLinkId;

    @ApiModelProperty(value = "创建人ID")
    private String createBy;

    @ApiModelProperty(value = "创建时间")
    private LocalDateTime createTime;

    @ApiModelProperty(value = "修改人ID")
    private String updateBy;

    @ApiModelProperty(value = "修改时间")
    private LocalDateTime updateTime;

    @ApiModelProperty(value = "状态：1启用 0停用")
    private Integer status;

    @ApiModelProperty(value = "删除状态 1是 0否")
    private Integer deleted;

    @TableField(exist = false)
    @ApiModelProperty(value = "租户菜单ID集合")
    private List<Long> tenantMenuIdList;

    @TableField(exist = false)
    @ApiModelProperty(value = "菜单ID集合")
    private List<Long> menuIdList;
}
